home *** CD-ROM | disk | FTP | other *** search
/ Magnum One / Magnum One (Mid-American Digital) (Disc Manufacturing).iso / d8 / msk31doc.arc / MSKERM.BWR < prev    next >
Text File  |  1991-03-26  |  38KB  |  699 lines

  1. File MSKERM.BWR       MS-DOS KERMIT 3.10 "BEWARE FILE"         March 1991
  2.  
  3.  
  4.    MS-DOS KERMIT VERSION 3.10 "BEWARE FILE": KNOWN BUGS AND LIMITATIONS
  5.  
  6. This file applies to version 3.10 of MS-DOS Kermit for the IBM PC and PS/2
  7. families and compatibles.  If you are experiencing problems with MS-DOS
  8. Kermit, please read this file first to find out the status of the problem.
  9. It might be known already, and a workaround might be listed here.
  10.  
  11. The user manual for MS-DOS Kermit 3.0 is "Using MS-DOS Kermit", by Christine
  12. M. Gianone, published by Digital Press, Bedford, MA, 1990, order number
  13. EY-C204E-DP.  Call 1-800-343-8321 (toll free, USA) to order.  A new edition
  14. for version 3.1 is in preparation.
  15.  
  16. MS-DOS Kermit 3.1 has been successfully tested with PC-DOS 2.0, 3.0, 3.30, and
  17. 4.0 on a wide variety of IBM PCs, XTs, PC/ATs, Portable PCs, PS/2s, and
  18. compatibles.  DOS 2.0 or later is required.
  19.  
  20. Please report problems via e-mail to Info-Kermit@watsun.cc.columbia.edu or to
  21. KERMIT@CUVMA.BITNET, or call (212) 854-5126, or write to Kermit Distribution,
  22. Columbia University Center for Computing Activities, 612 West 115th Street,
  23. New York, NY 10025, USA.
  24.  
  25. MEMORY REQUIREMENTS
  26.  
  27. Version 3.10 of MS-DOS Kermit normally requires about 190K of memory,
  28. including the memory which it allocates dynamically for ten rollback screens.
  29. Each rollback screen requires about 8KB.  You can control the number of
  30. rollback screens by putting a line like this in your AUTOEXEC.BAT file:
  31.  
  32.   SET KERMIT=ROLLBACK 40
  33.  
  34. If you don't have enough memory to run Kermit with the default number of
  35. rollback screens, then use this same mechanism to reduce the number, for
  36. example SET KERMIT=ROLLBACK 1 (or 0).
  37.  
  38. Kermit allocates memory for macro and key definitions dynamically, so if you
  39. plan to have many such definitions active, you will need sufficient extra
  40. memory available over and above the amount required for KERMIT.EXE itself and
  41. its rollback screens.
  42.  
  43. Finally, Kermit's RUN command as well as many of its DOS-like commands (DIR,
  44. TYPE, etc) work by loading a copy of COMMAND.COM (approx 25K) plus whatever
  45. other programs you might ask COMMAND.COM to run.
  46.  
  47. PROBLEMS WITH KERMIT UNDER MICROSOFT WINDOWS, DESQVIEW, OS/2, ETC
  48.  
  49. The second edition of "Using MS-DOS Kermit" contains hints for setting up your
  50. windowing environment (OS/2, Windows, or DesqView) for MS-DOS Kermit.  This
  51. information is also in the file MSKERM.HLP.
  52.  
  53. Although MS-DOS Kermit works in these environments, and even takes advantage
  54. of many of their features, it does not have a "graphical user interface".
  55. You still have to type commands to the MS-Kermit> prompt.
  56.  
  57. Reportedly, under Microsoft Windows/286 v2.03 there may be problems with
  58. memory allocated from DOS being corrupted during Windows' operations.  One
  59. symptom is that macro definitions will turn into garbage (random characters).
  60. This has not been observed under Windows/386 and Windows 3.0.
  61.  
  62. When running under any version of MS Windows the user is cautioned that
  63. specifying a ",P" at the end of a serial port setting in WIN.INI or in a MODE
  64. command may cause loss of characters from the serial port.  Remove the ",P"
  65. from the setting.
  66.  
  67. INCOMPATIBILITIES BETWEEN MS-DOS KERMIT 3.10 and 3.00/3.01: 
  68.  
  69. Macro arguments are now "stacked", saved at each macro entry and restored upon
  70. exit, so that calling macro B from within macro A does not destroy macro A's
  71. arguments.  Note: this changes the operation of the LOOKUP macro described in
  72. "Using MS-DOS Kermit". Variable \%0 now holds the name of the macro.
  73.  
  74. The REPLAY command now allows screen rollback, dump, print, etc.  At the end
  75. of the replay file, use regular terminal emulation keys (PgUp, Ctrl-End,
  76. PrintScreen) to invoke these functions, and use Alt-X, Ctrl-]C, or Ctrl-C to
  77. get back to the prompt.  Previously, any keystroke would return to the prompt.
  78.  
  79. If an INPUT command is interrupted by pressing any key, the status
  80. is set to FAILURE, just as if the command had timed out.  If you need to know
  81. whether an INPUT failed because it timed out or was interruped, you can
  82. surround it with SET ALARM and IF ALARM commands, e.g.
  83.  
  84.   SET ALARM 30
  85.   INPUT 30 Login:
  86.   IF SUCCESS GOTO OK
  87.   IF ALARM ECHO INPUT Interrupted from keyboard
  88.   IF NOT ALARM ECHO INPUT Timed out
  89.  
  90. The ECHO command no longer requires a \13 on the end.  It supplies both CR
  91. and LF.
  92.  
  93. The WRITE command, introduced in version 3.00, no longer accepts "objects"
  94. like DATE, TIME, etc.  Now it is more like an ECHO command that includes a
  95. destination specifier: WRITE SCREEN, WRITE SESSION, etc.  The argument in
  96. all cases is a line of text.  This text may contain any kind of backslash
  97. codes or variables, including the new (to version 3.10) built-in \v(xxx)
  98. variables like \v(time), \v(date), etc.  Old-format WRITE commands will still
  99. work, but will produce different results.  For example WRITE SCREEN TIME FOO
  100. will print "TIME FOO" on the screen rather than something like "12:34:56 FOO".
  101.  
  102. BYE, FINISH, or LOGOUT commands that fail (e.g. because the remote server has
  103. these operations disabled) no longer behave as if they had succeeded.
  104.  
  105. Text and graphics screens can now have separate colors.
  106.  
  107. COMMUNICATIONS
  108.  
  109. On IBM PCs and PS/2s with IBM asynchronous adapters, Kermit can be used at
  110. speeds up to 57600 bps.  For 115200 bps to work, a very short shielded cable is
  111. required, and the async adapters of the two machines must be in perfect tune.
  112. Some VAX serial port interfaces are out of tolerance at 19,200 bps and faster.
  113.  
  114. Although high speeds can be used for file transfer, the maximum speed for VT
  115. and Tektronix terminal emulation depends upon the model of your PC.  For
  116. original PCs and PC/XTs, it is 9600 bps.  For PC/ATs and PS/2s, it is
  117. generally 19200, perhaps 38400.  If your speed is set too high for your PC
  118. model, the symptom might be lost or garbled characters or graphics images on
  119. the screen.  Normally XON/XOFF flow control prevents these problems, but if
  120. flow control is NONE then the above speed guidelines are typical limits of the
  121. machine's display adapter and CPU.  Printing while in Connect mode clearly
  122. requires that flow control be active.
  123.  
  124. MS-DOS Kermit does not attempt to monitor the communication line for carrier
  125. loss during terminal emulation or file transfer (but you can SHOW MODEM or
  126. SHOW COMMUNICATIONS to inquire about CD, DSR, and CTS).  The script command
  127. WAIT permits sensing carrier presence while doing scripts or macros.
  128.  
  129. The SHOW MODEM and WAIT commands work right only if your modem or other
  130. communication device is configured to raise and lower the DSR, CTS, and CD
  131. signals appropriately, and the cable that connects your PC to the modem passes
  132. these signals through.  For some modems, the factory setting is to always keep
  133. CD on, even if there is no connection.  Consult your modem manual.  Some C&T
  134. chip sets emulate the serial port in such a way that these signals are always
  135. raised.
  136.  
  137. For RS-232 devices, the HANGUP command (and Ctrl-]H in CONNECT mode) works
  138. only if the cable that connects your PC to the communication device passes the
  139. DTR signal through, and if the communication device itself is configured to
  140. hang up or otherwise terminate the connection when the DTR signal is lowered
  141. by the PC.  For some modems, the factory setting is to ignore DTR transitions.
  142. Consult your modem manual.
  143.  
  144. MS-DOS Kermit does not have a DIAL command or a built-in phone directory.
  145. However, Kermit script programs can be (and have been) written to fill this
  146. need.
  147.  
  148. It has been found that when communicating across some network pathways that
  149. the longest burst of information tolerated from the PC is rather short. For
  150. example, the LAT path with SET PORT DECnet has a limit of 256 bytes and the
  151. SET PORT TES path has a limit of 512 bytes in a burst.  Longer bursts cause
  152. the communications software to drop the connection.  This consideration is
  153. important when sending files, and if sliding windows is active, the sum of
  154. all the packets in the window (packet length times the number of window slots)
  155. must be shorter than the above limits.  This is not a Kermit problem.
  156.  
  157. TERMINAL EMULATION
  158.  
  159. Kermit's VT320/340 emulator lacks the following functions of the corresponding
  160. real terminals:
  161.  . Smooth scroll
  162.  . Down loadable soft fonts
  163.  . ReGis graphics (VT340/330)
  164.  . Dual sessions in split screens (VT340/330)
  165.  . Local screen editing and block transmission (for security reasons)
  166.  . ENQ/Answerback (also for security reasons)
  167.  . True double height/width characters (these are simulated)
  168.  . Selective erasure (as a character attribute, a formatted screen item)
  169.  . Many of the exotic and rarely known features of the DEC VT340/330
  170.    series: mostly formatted screen and graphics operations highly specialized
  171.    to DEC hardware.
  172.  
  173. If Kermit loses incoming characters during terminal emulation because of
  174. serial port buffer overruns or network packet loss (which it can detect), it
  175. sounds a beep (i.e., it replaces the lost character(s) with a Control-G).
  176.  
  177. If VAX/VMS thinks you have a VT320, it will send 8-bit control sequences.
  178. Kermit will not understand them unless you SET TERMINAL BYTESIZE 8 (or the
  179. equivalent command SET DISPLAY 8).  Or, you can prevent VMS from sending 8-bit
  180. control sequences (for example, if you really do not have an 8-bit connection)
  181. by giving the VMS command SET TERMINAL /NOEIGHT.  The symptom of getting this
  182. wrong is the appearance of fragments of escape sequences on the screen and
  183. wrong cursor positioning, and possibly fractured tab settings.  You should
  184. also use Xon/Xoff flow control in both directions (SET TERM /TTSYNC /HOSTSYNC
  185. on VMS).
  186.  
  187. If your display adapter lacks sufficient memory (as do CGA and the early 64K
  188. EGA boards), then when you toggle away from a graphics screen, or type the
  189. connect-mode escape character (Ctrl-]), the graphics image will be lost.
  190. Furthermore, certain graphics images may be overlaid with vertical stripes on
  191. small (64K) EGA systems.
  192.  
  193. When you type the escape character (normally Ctrl-]) while in Tektronix
  194. graphics mode, the screen goes back to text memory.  Then when you type the
  195. argument character, the graphics screen reappears (unless the argument was C
  196. or P).  Ctrl-]F will not file the graphics screen, but rather the text screen,
  197. because that's the screen that's showing after type the Ctrl-] key.  To file
  198. the graphics screen (in TIFF format), use Ctrl-End (which has the Kermit verb
  199. \Kdump assigned to it by default).
  200.  
  201. You can't dump the Tektronix screen while the GIN-mode crosshair cursor is
  202. active.  When the crosshairs are up Kermit's keyboard translator is not
  203. active.  Key strokes (of regular typewriter keys) or mouse actions are used to
  204. transmit the crosshair coordinates.  If you press a non-typewriter key, Kermit
  205. just beeps.
  206.  
  207. In VT100/300 emulation on the IBM family, receipt of the ESC [ 4 m (turn on
  208. underscore) command results in reverse video rather than underscore on IBM CGA,
  209. EGA and other color monitors.
  210.  
  211. If certain incomplete escape sequences are received during terminal emulation,
  212. Kermit can hang.  For example, Operating System Command.  Kermit is waiting
  213. for the string terminator that never comes.  This usually happens because of
  214. noise on the communication line. Reset the terminal emulator by pressing ALT =
  215. (ALT and the equals sign key) which is default key binding of keyboard verb
  216. \Kreset.
  217.  
  218. If your display adapter handles 132 columns in text mode, and Kermit knows how
  219. to control it, Kermit can switch automatically between 80- and 132-column mode
  220. upon host command or SET TERMINAL WIDTH { 80, 132 }.  Otherwise you have to
  221. provide external commands in the files COLS80.BAT and COLS132.BAT.  Kermit
  222. does not support other widths (except, to a certain extent, 40).  
  223.  
  224. If you have a monitor with fixed horizontal frequency but a video adapter that
  225. Kermit knows how to switch into 132 column mode, you will see only garbage on
  226. your screen whenever Kermit switches it to 132 columns.  There is presently no
  227. way to tell Kermit to ignore the "switch to 132 columns" escape sequence.
  228. Solution: if you buy a 132-column-capable video adapter, make sure you have a
  229. compatible monitor.
  230.  
  231. Kermit assumes 25 screen lines, but can adapt itself to other lengths to a
  232. certain extent if it knows how to get this information from the video adapter
  233. (but there still may be some confusion about screen length when switching
  234. between text and graphics modes, or between 80 and 132 column mode, or
  235. escaping back from CONNECT mode, due primarily to lack of reliable or
  236. consistent information from the many different kinds of video adapters).  The
  237. following video boards are directly controllable by Kermit:
  238.  
  239.      ATI EGA and VGA Wonder (NEW)
  240.      AST, Dell, and other boards based on Western Digital VGA boards (NEW)
  241.      AT&T / Olivetti
  242.      Everex Viewpoint EV-659, FVGA-673, EV-678, Micro Enhancer Deluxe (NEW)
  243.      IBM XGA (NEW).
  244.      Paradise AutoSwitch EGA Mono (NEW)
  245.      Paradise VGA Plus 16 (ROM BIOS 003056-xxx firmware) (NEW)
  246.      Paradise VGA Plus (ROM BIOS 003056-xxx firmware) (NEW)
  247.      Paradise VGA Professional (ROM BIOS 003056-xxx firmware) (NEW)
  248.      STB VGA/EM (Tseng TVGA)
  249.      STB VGA/EM Plus (Tseng 4000), VGA/EM-16, VGA/EM-16 Plus (NEW)
  250.      Tseng Labs EVA board with 132-column kit installed
  251.      Tseng Labs UltraPAK mono/Hercules with 132 column modes
  252.      Video 7 Vega Deluxe with 132X25.COM driver installed and Video 7 VGA
  253.  
  254. For others, you must create COLS80.BAT and COLS132.BAT files.  If your video
  255. board and monitor cannot do 132 columns in text mode, neither can Kermit.
  256.  
  257. To get properly formatted screens during terminal emulation, you must also
  258. inform the remote host of your screen width and length.
  259.  
  260. Kermit has many features of the DEC VT340 terminal but does not emulate a
  261. particular kind of colored graphics terminal, such as a DEC ReGIS display, or
  262. a Tektronix 41xx or 42xx series.  However, it can be used for color graphics
  263. by mixing ANSI color-setting escape sequences with Tektronix or Sixel
  264. commands.  This requires graphics software vendors adding support for MS-DOS
  265. Kermit graphics to their packages (so far, WordPerfect Corp has done this for
  266. their host-resident products).
  267.  
  268. Although Kermit handles Sixel but not REGIS graphics, there is at least one
  269. REGIS-to-Sixel converter on the market: RETOS, a DEC product for VAX/VMS.
  270.  
  271. Problems may occur when using Kermit with host-resident (VAX/VMS) versions of
  272. WordPerfect because the color palette report sent by the "terminal" upon
  273. request of WordPerfect is very long. If the host is not configured properly,
  274. parts of the report will be lost because of overruns on the VMS side.  SET
  275. TERM /HOSTSYNC and /TTSYNC are required by WP/VMS.  Even then intervening
  276. communication boxes (e.g. terminal servers), can become overloaded with the
  277. 200++ byte response unless the server is configured to handle information of
  278. that length or to do flow control effectively.
  279.  
  280. So that key translation and macros can work on both IBM and non-IBM compatible
  281. PCs, Kermit uses the system BIOS to obtain key scan codes.  But the IBM BIOS
  282. does not produce scan codes for certain keys, notably Num Lock.
  283.  
  284. Printer support: Transparent printing is started when the host sends the
  285. sequence ESC [ 4 i, and stops when the host sends ESC [ 5 i.  Transparent
  286. printing passes all characters, including escape sequences, that arrive at the
  287. port directly to the printer without translation (but strips off the parity
  288. bit if Kermit's parity is not NONE).  If character translation is desired, or
  289. it is desired not pass screen-control escape sequences to the printer, use
  290. Autoprint rather than Transparent print (ESC [ 0 i, ESC [ ? 4 i, ESC [ ? 5 i).
  291. In that case, characters are translated to the current IBM code page.  If your
  292. printer doesn't support your IBM code page, you need an external utility to 
  293. translate from the PC code page to the printer's character set.  You can use
  294. SET PRINTER xxxx to capture Transparent print or Autoprint data into a file.
  295.  
  296. If the host sends a print-initiating escape sequence, or if you press
  297. Print-Screen or Ctrl-Print-Screen, and you don't have a printer attached, your
  298. PC can hang.  To avoid this, put SET PRINTER NUL in your MSKERMIT.INI file.
  299.  
  300. When you PUSH to DOS (including when you use Kermit's RUN command), and you
  301. have XON/XOFF flow control enabled, Kermit sends an XOFF (Ctrl-S) to the host
  302. when you leave, and XON (Ctrl-Q) when you return.  This is good behavior, as
  303. it prevents data transmitted by the host while Kermit's back was turned from
  304. being lost.  However, if you do this while using the EMACS text editor on the
  305. host, the Ctrl-S will be interpreted as a Search command, and the Ctrl-Q as a
  306. Quote command.  When you return to EMACS, type one or two Ctrl-G's to get out
  307. of the Search command.
  308.  
  309. Similar comments about sending Xoff and Xon apply when Kermit is commanded
  310. to change its screen size between 80 and 132 columns.  For example, if your
  311. host insists upon seeing a particular character to begin a session, but not
  312. an Xoff/Xon pair, then use OUTPUT <the special character> before starting
  313. Connect mode with a screen width different than that at the Kermit prompt.
  314.  
  315. Session logging can be turned on using the LOG SESSION command, and it can
  316. be toggled on and off during terminal emulation by using whatever keys are
  317. associated with the verbs \Klogoff and \Klogon.  One user stated the
  318. requirement to enable a session log, but to have it initially toggled off.
  319. This can be done as follows (using the F1 and F2 keys as examples):
  320.   SET KEY \315 terminals    ; F1 to turn on log
  321.   SET KEY \316 \klogoff     ; F2 to turn log off
  322.   DEFINE terminals log session, set key \315 \klogon, define terminals
  323.  
  324. INTERNATIONAL CHARACTER SETS
  325.  
  326. Chapter 13, "International Character Sets," of the first printing of "Using
  327. MS-DOS Kermit" does not mention that in order to use code page switching, you
  328. also need to have a statement like:
  329.   DEVICE=C:\DISPLAY.SYS CON:=(EGA,437,(4,2))
  330. in your CONFIG.SYS file.  This is corrected in the second printing.  Refer to
  331. your DOS manual for details.
  332.  
  333. It is possible to use SET TRANSLATION INPUT to define new terminal character
  334. sets, that is new translations between whatever codes the host happens to be
  335. sending and whatever glyphs are loaded in the PC's character generator.  In
  336. MS-DOS Kermit 3.01 and later, this mechanism has been extended to work with
  337. character sets in which the C1 range (80h-9fh) contains graphic, rather than
  338. control characters, but only if you SET TERMINAL CHARACTER-SET TRANSPARENT.
  339.  
  340. MS-DOS Kermit 3.01 changes the strategy used by SET TRANSLATION INPUT and
  341. which is described in "Using MS-DOS Kermit".  In version 3.00 and earlier,
  342. this command worked like this:
  343.  
  344.   SET TRANSLATION INPUT \xxx \yyy
  345.  
  346. where \xxx is the code for the character received at the communication port,
  347. and \yyy is the code for the character to display on the screen.  In version
  348. 3.01 and later, \xxx is the code for the character that would be displayed on
  349. the screen in the current code page after normal translation, rather than the
  350. untranslated character that arrives at the port.  Example: modifying the
  351. built-in Swedish character set to show character values 64, 94, 96, and 126
  352. as ASCII rather than Swedish characters (using PC code page 437):
  353.  
  354.   SET TERMINAL CHARACTER-SET SWEDISH
  355.   SET TRANSLATION INPUT \144 \64  ; What would normally be E-acute is atsign
  356.   SET TRANSLATION INPUT \154 \94  ; U-umlaut is circumflex
  357.   SET TRANSLATION INPUT \129 \126 ; u-umlaut is tilde
  358.   SET TRANSLATION INPUT \130 \96  ; e-acute is accent grave
  359.   SET TRANSLATION INPUT ON        ; Enable translation
  360.  
  361. MS-DOS Kermit determines the current file character set, and it decides which
  362. translations to apply to the current terminal character set, by asking DOS
  363. what the current code page is.  Code pages exist which are not distributed in
  364. the USA, such as CP861 for Icelandic and CP862 for Hebrew.  It is said that
  365. DOS incorrectly reports these code pages to be CP437.  Furthermore it's not
  366. clear what the DOS code page reporting mechanism would be, if any, for
  367. otherwise IBM-compatible PCs custom fitted with special character sets such as
  368. Cyrillic, Arabic, etc, so in these cases too Kermit assumes CP437 and again,
  369. there is no current method for the user to load the necessary character set
  370. translation tables (many).
  371.  
  372. Code page switching is reportedly not possible on old PC/ATs that have
  373. small-memory (64K) EGA boards.
  374.  
  375. The right hand portion (GRight) of the Latin1 terminal character set will not
  376. be accessed by SI/SO locking shifts unless Kermit first receives the escape
  377. sequence ESC - A (Escape, dash, uppercase A) from the host.  This is in
  378. accordance with the way Digital Equipment Corporation designed the VT300
  379. terminals.  That is, the initial state is G0 = G1 = ASCII, G2 = G3 = Latin1,
  380. and SI (Control-N) shifts the GLeft pointer from the G0 to the G1 set.  The
  381. escape sequence ESC - A causes G1 to be loaded with Latin1.  Alternatively,
  382. the right hand portion is accessable by using Single Shift 2, ESC N, or
  383. Locking Shift 2, ESC n, before the text character(s).  You can also designate
  384. Latin-1 to G1 (so that SO/SI will work) by hand with the command:
  385.  
  386.   SET TERMINAL CHARACTER-SET LATIN1 G1
  387.  
  388. (This feature is new to verstion 3.10.)  Kermit's terminal emulator sends
  389. characters with their high bit set as ESC N <character without the high bit>
  390. if parity is other than None.
  391.  
  392. To get international characters to display correctly on the DEC VAXmate during
  393. terminal emulation, you must SET TERMINAL CHARACTER-SET LATIN1 G2.
  394.  
  395. LOG SESSION records the characters that arrive at the serial port, before
  396. translation by either Kermit's built-in terminal character set translation
  397. tables or by user-specified SET TRANSLATION INPUT commands (versions 2.32/A and
  398. earlier did apply the SET TRANSLATION INPUT command before logging to disk).
  399. This allows the REPLAY command to work correctly, but it prevents special
  400. characters from being logged after translation to the PC's own character set.
  401. Screen dump (Ctrl-End or Ctrl-]F) and autoprint, however, record the
  402. translated characters.
  403.  
  404. SET TERMINAL CHARACTER SET is effective only for text screens, not for
  405. graphics screens.  This is because the fonts for all the special characters
  406. have not been designed yet (and may never be, and even if they are, they would
  407. require a great deal of memory).
  408.  
  409. The SET TERMINAL CHARACTER-SET does not include DEC-TECHNICAL, even though
  410. MS-DOS Kermit supports this set internally.  The only way to use the
  411. line-drawing and similar characters of the DEC-Technical set is by
  412. host-generated escape sequences, for example ESC ( > to designate it to G1,
  413. and then shifts (LS1 or SS1) to invoke the special characters.
  414.  
  415. MS-DOS COMMAND PROCESSING
  416.  
  417. A command file that contains lines or commands that are too long for DOS's
  418. line buffer can hang your PC.
  419.  
  420. Commands in TAKE-files or MSKERMIT.INI can be continued by including "-" as
  421. the last character on the line, but NOT if the line ends with a trailing
  422. comment.  In other words, you can't have a trailing comment on a continued
  423. line.  If you need to end a line with a dash, but this dash is to be part of
  424. the command rather than a continuation symbol, then use \45 instead or put a
  425. comment AFTER the dash.
  426.  
  427. Trailing comments can be used only in command files.  All text starting with
  428. the first semicolon through the end of line is ignored.  If you need to include
  429. an actual semicolon in a command, precede with a backslash (\;).
  430.  
  431. If you need to include a question mark in a command file, use \63.  A literal
  432. question mark will cause a help message to appear on your screen.
  433.  
  434. The name and password that you specify in SET SERVER LOGIN must be matched
  435. exactly by the ones in REMOTE LOGIN.  Alphabetic case matters.  If you need
  436. to include spaces within the username, password, or account field of the
  437. REMOTE LOGIN or SET SERVER LOGIN commands, surround the field with {braces}.
  438.  
  439. FILE TRANSFER
  440.  
  441. SET EOF CTRL-Z, when used with text files which actually contain Ctrl-Zs,
  442. might result in gaps or truncation in the vicinity of the Ctrl-Z.  This is
  443. an artifact of DOS file i/o.
  444.  
  445. When using Kermit through a terminal server (particularly those that execute
  446. the TCP/IP Telnet protocol), it is often necessary to SET PARITY SPACE in
  447. order to transfer files.  It is also often impossible to use very long
  448. packets.  Try SET RECEIVE PACKET-LENGTH 80, working up or down to the longest
  449. length that works.
  450.  
  451. REMOTE TYPE and other REMOTE commands may result in an error "Unable to open
  452. CON".  This can result from insufficient FILES= in CONFIG.SYS or systems with
  453. all file handles used by, say, a network shell.  FILES= should be at least 20.
  454.  
  455. MS-DOS Kermit will use the program named in the DOS Environment command line
  456. starting as SHELL= as a replacement for COMMAND.COM.  Such a line is seen by
  457. typing SET at the DOS prompt, and it is not associated with the SHELL= line
  458. appearing in file CONFIG.SYS.
  459.  
  460. SET LO is no longer a sufficient abbreviation for SET LOCAL-ECHO.  Use SET LOC.
  461.  
  462. The MS-DOS Kermit command REMOTE SET BLOCK-CHECK will generally have no
  463. effect upon a remote server unless you also SET BLOCK-CHECK locally within
  464. MS-DOS Kermit.
  465.  
  466. The host prompt for TRANSMIT is a single character (SET TRANSMIT PROMPT).  It
  467. is not possible to specify a multi-character or variable prompt.
  468.  
  469. SCRIPT PROGRAMMING
  470.  
  471. The terminal emulator is not active during execution of script commands such
  472. as INPUT and OUTPUT.  This means:
  473.  
  474.  1. If the host sends the escape sequence that tells the terminal to identify
  475.     itself, it will be ignored.  You have to put the appropriate INPUT and
  476.     OUTPUT commands in your script program.
  477.  
  478.  2. Screen formatting escape sequences have no effect.  If you have SET INPUT
  479.     ECHO ON, they are simply displayed as-is.
  480.  
  481. If the remote host is sending ANSI (VTxxx) escape sequences during execution
  482. of the script program, then users of IBM PCs can use the ANSI.SYS or similar
  483. console driver to interpret the escape sequences.  This is particularly useful
  484. when running a script that logs in to a full-screen system, such as an IBM
  485. mainframe through a protocol converter.  But beware: ANSI.SYS is not totally
  486. compatible with Kermit's VT emulator, and it may produce various unwanted side
  487. effects, perhaps the most annoying of which is suddenly popping your PC into
  488. 40-column mode!  If you experience any difficulties with your screen display
  489. while using Kermit, SET INPUT ECHO OFF before the offending information
  490. arrives.  Alternatively, remove ANSI.SYS from your CONFIG.SYS file, reboot,
  491. and most likely the problems will disappear.
  492.  
  493. A specific example INPUT vs ANSI.SYS: If you write a script program that
  494. attempts to log in to a VAX/VMS system (5.0 or later), looks for the ESC Z
  495. terminal type query, and responds with the VT320 terminal-type ID, your PC
  496. can hang if you are running ANSI.SYS.  Diagnosis: After receiving the VT320
  497. terminal-type ID, VMS sends ESC [ 62 " p (Select Operating Level = VT300 mode
  498. with 8-bit controls), ESC SP F (disable 8-bit controls), ESC > (enter keypad
  499. numeric mode).  The Select Operating Level sequence hangs ANSI.SYS (at least
  500. in IBM PC DOS 3.30) and the PC.  Solution: SET INPUT ECHO OFF.
  501.  
  502. PAUSE, WAIT, and similar commands also cause port input to be echoed to the
  503. screen if INPUT ECHO is ON.  Use SET INPUT ECHO OFF to defeat this effect.
  504.  
  505. Script programming hint:  To test whether a readable floppy disk is available
  506. in drive A:, do this:
  507.  
  508.   SPACE A:
  509.   IF FAILURE ECHO No diskette in drive A:.
  510.  
  511. HARDWARE RELATED PROBLEMS
  512.  
  513. There have been isolated reports that MS-DOS Kermit (3.10 as well as earlier
  514. versions) crashes with "Divide Overflow" errors on certain 486-based machines
  515. such as the AST Bravo 486.  This problem is currently unresolved.  Kermit is
  516. known to work properly on the Dell 486, and it contains no instructions that
  517. require any kind of processor higher than an 8086/8088.
  518.  
  519. MS-DOS Kermit will not necessarily work with all brands of internal modems,
  520. particularly some of the built-in ones that come with laptop PCs from various
  521. makers.  Certain Everex models are known to fall into this category.
  522.  
  523. If you cannot communicate satisfactorily through such a modem, you can use the
  524. new command SET COM1 <address> [ <irq> ] (also SET COM2 .. COM4) to identify
  525. the port's hardware address and interrupt request line number.  USE THIS
  526. COMMAND WITH CAUTION, AS IT MIGHT INTERFERE WITH YOUR PC's NORMAL OPERATION!
  527. If all else fails, give the command SET PORT BIOS1 (or 2, etc) and try again,
  528. to access the port through the system BIOS -- this is much slower that direct
  529. hardware control by Kermit.  Kermit does work with most popular brands of
  530. internal modem (such as the Hayes Smartmodem 1200B and 2400B), and with all
  531. known external modems, both direct-connect and acoustic.
  532.  
  533. Kermit does not work properly with revision C of the built-in modem in the
  534. Toshiba T1600 laptop computer, due to an idiosyncracy of this modem.  The
  535. symptom is that the connection drops when you escape back from connect mode,
  536. at which point Kermit turns off interrupts.  The modem misinterprets this as a
  537. command to hang up the phone and turn itself off.  Revision F of this modem
  538. does not have this problem.  Note: This problem occurs with the "built-in"
  539. modem, not the "internal" modem (these are two different devices).
  540.  
  541. Reportedly, on the PS/2 model 55SX, there is a driver called CMOSCLK.SYS which
  542. prevents Kermit from working properly.  Reportedly, removing this driver from
  543. the CONFIG.SYS file makes Kermit work right.  The effects of not running this
  544. driver on the 55SX are not known.
  545.  
  546. The graphics display on the PS/2 Model 30, whose graphics adapter is neither
  547. a real EGA nor a real VGA, is elongated vertically so that certain normal
  548. Tektronix graphics images might not fit on the screen.  Try SET TERM GRAPHICS
  549. CGA to use it in CGA mode.
  550.  
  551. Users of add-in CPU boards should be aware that the board may not handle UART
  552. serial port details properly if the UART is not directly part of the add-in
  553. cpu board.  One symptom will be Kermit can send but not receive characters.  A
  554. workaround is to use SET PORT BIOS1. The faults are with the add-in boards and
  555. seem to be characteristic of the species.
  556.  
  557. Reportedly MS-DOS 2.11 for Tandy 1200 machines has an internal problem if
  558. a program opens device CON for output, as Kermit does for REMOTE commands.
  559. The symptom is cross linkage of files on the current disk.  This has not been
  560. noted with other versions of MS-DOS 2.11.  Since it is not a Kermit problem
  561. the solution is to upgrade to a more recent version of DOS.
  562.  
  563. NETWORKS
  564.  
  565. The first edition of "Using MS-DOS Kermit" neglected to mention the 3COM(BAPI)
  566. network interface and the command "set port net 3com(bapi)".
  567.  
  568. MS-DOS Kermit contains no built-in support for network devices (like Ethernet
  569. or Token Ring or Appletalk cards), nor does it perform network protocols such
  570. as Netbios or TCP/IP itself.  Rather, it relies on external drivers to do
  571. these jobs, and then uses interrupts to communicate over the network using
  572. these drivers.  In many cases, Kermit has knowledge of the higher-level
  573. protocols used on particular networks, and takes advantage of them.  That's
  574. what all the network-related SET PORT commands are for.  But to answer a
  575. frequently-asked question: no, Kermit does not contain built-in code to do
  576. TCP/IP or Telnet.  Several commercial products exist (such as FTP Software's
  577. TNGLASS program and Novell's LAN WorkPlace for DOS) that give Bios Interrupt
  578. 14h access to TCP/IP Telnet connections, but it is hoped that similar
  579. public-domain packages will appear that do the same job.  So far, none has.
  580.  
  581. Sending BREAK over various network connections via SET PORT BIOS1 + Int 14h
  582. interceptor may or may not work, depending upon the actual network and drivers
  583. in use.  Kermit uses the BREAK facility if the driver and network support it.
  584.  
  585. Frequently people discover that their PC no longer works after installing a
  586. network board. The usual problem is they purchased a 16bit VGA display adapter
  587. and run it in 16 bit mode.  Jumper it back to 8 bits and hardly notice the
  588. tiny drop in speed.
  589.  
  590. PC-NFS apparently has a fault which prevents applications programs such as
  591. Kermit from creating a file in the root directory of a PC-NFS disk drive.
  592. When the applications program asks if a particular file exists in the root
  593. then PC-NFS always responds with "volume label present", whether or not the
  594. actual file is present.  Thanks to Thomas Dwyer, tomiii@mtus5.bitnet, for this
  595. discovery.
  596.  
  597. SET PORT TELAPI performance is good with version 4 of Novell's LAN WorkPlace
  598. for DOS but it is poor with version 3.5 because that older version sends each
  599. Kermit byte in an individual packet. Version 4 is much superior in other ways.
  600.  
  601. Kermit does not support the AT&T LAN Async Server with STARGROUP version 3 OSI
  602. level protocols.  This is a possibility for future releases.  However, Kermit
  603. does work well for logging into an AT&T Unix machine across a StarGROUP
  604. network.
  605.  
  606. SOURCE CODE
  607.  
  608. MS-DOS Kermit is written in MASM (Microsoft Assembler).  Only 8088-level
  609. instructions are used.  Kermit does not use any special features of the 80286,
  610. 80386, or 80486 processors, nor does it use a math coprocessor.
  611.  
  612. The program source file MSZIBM.ASM is too big to be assembled with Microsoft
  613. assemblers before version 5.0.
  614.  
  615. INTERACTIONS WITH DOS
  616.  
  617. On early (original motherboard & BIOS) PCs, and on systems that mimic them
  618. (e.g. early Compaqs), the cursor may assume a strange shape upon return from
  619. CONNECT mode.  This is caused by a bug in the early BIOS, which stored cursor
  620. attributes incorrectly.  The PC Tech Journal article discussing the problem is
  621. "The Dashed Cursor", by Paul Pierce, PC Tech J., Dec. 1985, page 47.  He
  622. suggests the following fix:
  623.  
  624. ; Program FIXCURS.ASM by Paul Pierce, PC Tech Journal, Dec 1985, page 47.
  625. ;
  626. code    segment public 'code'
  627.         assume cs:code, ds:code, es:nothing
  628. ;
  629. ;       This program is set up to be made into a COM file
  630. ;
  631.         org     100H
  632. ;
  633. ; First check for the monochrome adapter.
  634. ;
  635. start:  int     11H             ; set ax = equipment flag
  636.         and     al,30H          ; mask off all but video bits
  637.         cmp     al,30H          ; test for monochrome adapter
  638.         jne     exit            ; jump if not monochrome
  639. ;
  640. ; Now check for incorrect cursor mode returned from the Bios
  641. ;
  642.         mov     ah,3            ; call bios to get cursor type
  643.         int     10H             ;
  644.         cmp     cx,0607H        ; check for invalid (color) type
  645.         jne     exit            ; jump if not a bad value
  646. ;
  647. ; At this point we know that the monochrome adapter is in use and that
  648. ; the bios cursor mode is incorrect.
  649. ; Call the bios to set the cursor type correctly.
  650. ;
  651.         mov     cx,080cH        ; use correct cursor type
  652.         mov     ah,1            ; call bios to set cursor type
  653.         int     10H
  654.  
  655. exit:   mov     ah,0            ; exit back to DOS
  656.         int     21H
  657.  
  658. code    ends
  659.         end     start
  660.  
  661. Shift-Printscreen can cause the PC to hang if there is no attached printer.
  662. This is a BIOS feature, Kermit never receives the command.  It occurs most
  663. frequently with a printer interface that has nothing plugged into it.  If this
  664. happens during terminal emulation, try pressing  Alt-=  (hold down Alt and
  665. press the "=" key) several times to reset the terminal.
  666.  
  667. When used in remote mode, e.g. as a server, a REMOTE HOST command can invoke
  668. the DOS critical error handler, which issues its familiar "Abort, Ignore,
  669. Retry?" message on its real screen, and is waiting for a response from its own
  670. real keyboard, and so the server will no longer respond.  Kermit attempts to
  671. catch many of these errors before DOS learns learns about them, but some
  672. cannot be avoided (like disk i/o errors).
  673.  
  674. Interaction between MS-DOS Kermit and various terminate-and-stay-resident
  675. (TSR) programs is necessarily unpredictable, depending upon how "well behaved"
  676. they are.  Certain console, mouse, or graphics drivers might interfere with
  677. file transfer, etc.  Caution should be used when invoking certain TSR programs
  678. while PUSHed from Kermit (e.g. using the PRINT command for the first time), as
  679. not all of these programs observe proper etiquette for allocating and freeing
  680. memory, and more importantly the TSRs will be loaded above Kermit into the
  681. middle of memory where they may prevent large programs from loading later.
  682.  
  683. As a concrete example of the above, certain mouse drivers may prevent Kermit
  684. from transferring files, and possibly also from recovering from timeouts
  685. during script execution, or even from XOFF deadlocks during terminal
  686. emulation.  Possible workarounds include: (1) remove the mouse driver from
  687. your CONFIG.SYS file; (2) if your mouse driver can be turned off and on (e.g.
  688. if you have MOUSE OFF and MOUSE ON commands), turn the mouse off during Kermit
  689. execution; (3) give the MS-DOS Kermit command SET TIMER OFF.  Normally Kermit
  690. works fine with mouse drivers attached to another serial port.
  691.  
  692. If TSR programs are interfering with Kermit (by taking over the timer or
  693. serial port interrupts), you should remove them all from your AUTOEXEC.BAT
  694. or CONFIG.SYS files, and then put them back one by one until you have
  695. identified the one that's causing the problem.
  696.  
  697. End of MSKERM.BWR
  698.  
  699.